The present invention relates to bandwidth optimization in an integrated satellite network, and more particularly to optimization of an Aloha component of bandwidth in such an integrated satellite network.
The user aloha is one of the methods used in an Integrated Satellite Business Network (ISBN) to transfer data from a remote port to a hub over a spacelink. The spacelink has two data paths referred to herein respectively as the inroute and the outroute. The inroute refers to a data path from the remote port card to an earth orbit satellite, and from the earth orbit satellite to the hub. The outroute refers to a data path from the hub to the earth orbit satellite, and from the earth orbit satellite to the remote port. Typically, a plurality of remote port cards are used to service a corresponding plurality of user devices, whereas a single hub is used to service a single host. The entire data path, both inroute and the outroute are referred to herein as the spacelink.
The term remote terminal as used herein, refers to the user device and the remote port card collectively. The term host terminal, as used herein, refers to the hub and the host device collectively.
The inroute is temporally subdivided into units referred to herein an inroute frame. The inroute frame is further functionally subdivided into a first component referred to as the Stream component, a second component referred to as the Transaction Reservation component, a third component referred to as the User Aloha component, and a fourth component referred to as the Control Aloha component. All of these components, except the Control Aloha component, are optional and can be selected by the network operator.
The smallest subdivision of the inroute frame is referred to as a slot, the size of which depends upon the frequency used to carry the inroute frame. There are eight bytes per slot in a 128K inroute (90 slots and 720 bytes total per inroute frame).
The portion of each inroute frame allocated to stream is assigned by the host terminal to a single remote terminal and is used for communications from the single remote terminal to the host terminal via the earth orbit satellite.
The portion of each inroute frame allocated to User Aloha Control Aloha and Transaction Reservation is configured by a network operator and is controlled by the hub. User Aloha and Control Aloha are configured as X' number of slots per burst and Y bursts User Aloha and Y' bursts Control Aloha per frame. Once configured, this allocation, in accordance with heretofore known integrated satellite business networks, remains the same in every inroute frame, and can only be changed manually by the network operator.
Typically, the User Aloha component is used by the remote terminal to communicate information such as credit card authorizations, and other relatively short, infrequent and unscheduled communications. The Transaction Reservation component, on the other hand, is used for file transfers and other lengthy transactions. In order to send a message via user aloha, the remote terminal selects one of the bursts within the User Aloha at random, and sends the message. In contrast, in order to send a message via transaction reservation, the remote terminal first send a transaction request via Control Aloha (by selecting one of the bursts within the Control Aloha component at random, and sending the request during the selected burst). Once the host terminal receives the transaction request, it replies to the remote terminal on the outroute, assigning the remote terminal slots within the Transaction Reservation component (assuming such slots are available). Problematically however, both transaction requests sent over Control Aloha, and messages sent over User Aloha may be sent from one remote terminal in the same burst as a transaction request, or message, respectively, being sent by another remote terminal. In this event, a collision occurs, and neither of the two messages is received by the host terminal. After a timeout expires at each of the remote terminals that sent the collided transaction request or User Aloha message, the transaction request or User Aloha message is resent--and hopefully does not collide a second time.
Because the inroute is preconfigured by the network operator based generally on statistical analysis of typical usage of the inroute, the number of slots allocated to Transaction Reservation and the number of bursts allocated to User Aloha may not be optimal for a given data load at a given time. During, e.g., daylight hours the available Transaction Reservation slots are relatively unused, while at night when large file transfers are more common amongst integrated satellite business network users Transaction Reservation slots can be at a premium. Similarly, while the configured User Aloha slots are relatively unused at night, they are highly utilized during the day when small messages, such as credit card authorizations, are more prevalent. As a result, each inroute frame, at any given time, may contain a number of unused slots within the Transaction Reservation or User Aloha components. At the same time as the Transaction Reservation component (or User Aloha component) is highly utilized, the User Aloha component (or Transaction Reservation component) may go virtually unused. The result of a highly utilized User Aloha component is increased collisions, and therefore increased delay in transmitting User Aloha messages. The result of a highly utilized transaction reservation component is greater delay in allocating Transaction Reservation slots, and increased requests for additional Transaction Reservation slots--due to the failure of the host terminal to reserve all of the slots requested during an initial request. These increased requests for additional Transaction Reservation slots result in greater traffic in the Control Aloha component, which in turn results in a greater occurrence of collisions in the Control Aloha component. Note that even when there are no Transaction Reservation slots in use there is still a chance that there will be a collision in the Control Aloha component.